// utils/webSocket.js
export default {
	// 建立 WebSocket 连接
	connect(id) {
		return new Promise((resolve, reject) => {
			const socket = new WebSocket(`ws://8.142.124.111:8889/connect/${id}`);

			// 监听连接打开事件
			socket.onopen = () => {
				resolve(socket); // 将 socket 对象传递给 resolve
			};

			// 监听连接错误事件
			socket.onerror = (error) => {
				reject(error);
			};
		});
	},

	// 发送消息
	send(socket) { // 移除 message 参数
		if (socket && socket.readyState === WebSocket.OPEN) {
			// 不需要发送消息
			console.log('WebSocket connection is open');
		} else {
			console.error('WebSocket connection is not open');
		}
	},

	// 监听消息
	receive(socket, callback) {
		socket.onmessage = (event) => {
			// 检查消息是否有效
			if (event && event.data) {
				const data = JSON.parse(event.data);
				callback(data);
			} else {
				console.error('Received invalid message:', event);
			}
		};
	},

	// 关闭连接
	close(socket) {
		socket.close();
	}
};